Identifying an area for electrical stimulation to treat a patient

ABSTRACT

A stimulation system, such as a spinal cord stimulation (SCS) system, having a programmer for identifying an area for electrical stimulation to treat a patient. The programmer includes a communication interface, a display screen, and a user interface. The communication interface communicates with the electrical stimulation generator to generate electrical stimulation and the display screen displays a patient model. The user interface receives user input identifying an area of pain on the patient model via a selection of the area of the body part. The programmer then associates the area of pain identified with a spinal column location, and displays on the display screen a suggested medical lead position and/or a suggested stimulation area on an image of a spinal column based on the step of associating.

BACKGROUND

The invention relates to a stimulation system, such as a spinal cordstimulation (SCS) system, having a tool for programming an electricalstimulation generator, such as an implantable pulse generator (IPG), ofthe system. The invention also relates to a method for developing aprogram for the stimulation system.

A spinal cord stimulator is a device used to provide electricalstimulation to the spinal cord or spinal nerve neurons for managingpain. The stimulator includes an implanted or external pulse generatorand an implanted medical electrical lead having one or more electrodesat a distal location thereof. The pulse generator provides thestimulation through the electrodes via a body portion and connector ofthe lead. Spinal cord stimulation programming is defined as thediscovery of the stimulation electrodes and parameters that provide thebest possible pain relief (or paresthesia) for the patient using one ormore implanted leads and its attached pulse generator. The programmingis typically achieved by selecting individual electrodes and adjustingthe stimulation parameters, such as the shape of the stimulationwaveform, amplitude of current in mA (or amplitude of voltage in V),pulse width in microseconds, frequency in Hz, and anodic or cathodicstimulation.

With newer medical electrical leads having an increased number ofelectrodes, the electrode and parameter combination increasesexponentially. This results in a healthcare professional, such as aclinician, requiring a substantial amount of time for establishing amanually created program for providing therapeutic spinal cordstimulation. Therefore, a manual approach for creating a program is notan optimal solution for the SCS system.

SUMMARY

Numerous embodiments of the invention provide a method and system forprogramming an SCS system with a substantially reduced time requirement,increased accuracy, and reduced power requirements.

In one embodiment, the invention provides a method of identifying anarea for electrical stimulation with a stimulation system for treating apatient. The stimulation system includes a programmer configured tocommunicate with an electrical stimulation generator. The methodincludes displaying a patient model on a display screen of theprogrammer and receiving, by the programmer, user input identifying anarea of pain on the patient model via a selection of the area of thebody part. The method further includes associating the area of painidentified with a spinal column location and displaying on the displayscreen a suggested medical lead position on an image of a spinal columnbased on the step of associating. In some instances, the display screenalso displays a suggested stimulation area on the image of a spinalcolumn based on the step of associating.

In another embodiment, the invention provides a stimulation system foridentifying an area for electrical stimulation to treat a patient. Thestimulation system includes an electrical stimulation generator, amedical lead coupled to the electrical stimulation generator, and aprogrammer. The programmer includes a communication interface, a displayscreen, and a user interface. The communication interface communicateswith the electrical stimulation generator to generate electricalstimulation. The display screen displays a patient model. The userinterface receives user input identifying an area of pain on the patientmodel via a selection of the area of the body part. The programmerfurther associates the area of pain identified with a tissue location(such as a spinal column location), and displays on the display screen asuggested medical lead position on an image of a tissue (such as aspinal column) based on the step of associating. In some instances, thedisplay screen also displays a suggested stimulation area on the imageof a spinal column based on the step of associating.

Other aspects of the invention will become apparent by consideration ofthe detailed description and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a partial perspective view of a patient using a spinal cordstimulation system.

FIG. 2 is a perspective view of an in-line lead for use in the spinalcord stimulation system of FIG. 1.

FIG. 3 is a perspective view of a paddle lead for use in the spinal cordstimulation system of FIG. 1.

FIG. 4 is a block diagram of a patient-feedback device for use in thespinal cord stimulation system of FIG. 1.

FIG. 5 is a block diagram of an implantable pulse generator for use inthe spinal cord stimulation system of FIG. 1.

FIG. 6 is a block diagram of a clinician programmer for use in thespinal cord stimulation system of FIG. 1.

FIG. 7 is a flow diagram for providing electrical stimulation to apatient.

FIG. 8 is a flow diagram for identifying a location for receivingelectrical stimulation.

FIGS. 9A-C illustrate a graphical user interface for identifying alocation for receiving electrical stimulation.

FIG. 10 illustrates a graphical user interface that displays a locationfor receiving electrical stimulation.

FIG. 11 is a flow diagram for positioning medical leads on a patient andmodeling a stimulation field.

FIGS. 12A-I illustrate a graphical user interface for modeling theposition of medical leads and electrical stimulation on a patient spinalcolumn.

FIG. 13 illustrates an original image and a scaled image of a spinalcolumn.

FIG. 14 illustrates the transmission of lead data and image data betweena first programmer, an implanted pulse generator, and a secondprogrammer.

FIG. 15 is a flow diagram for manual programming with a graphical userinterface.

FIGS. 16A-D illustrate a graphical user interface for programmingelectrical stimulation.

FIG. 17 is a flow diagram for automated programming with a graphicaluser interface.

FIGS. 18A-C illustrate a graphical user interface for automatedprogramming.

FIG. 18D depicts a close-up view of a portion of the graphical userinterface of FIG. 18C.

FIGS. 19A-E also illustrate a graphical user interface for automatedprogramming.

DETAILED DESCRIPTION

Before any embodiments of the invention are explained in detail, it isto be understood that the invention is not limited in its application tothe details of construction and the arrangement of components set forthin the following description or illustrated in the following drawings.The invention is capable of other embodiments and of being practiced orof being carried out in various ways.

The invention herein relates to an electrical stimulation system forproviding stimulation to target tissue of a patient. The systemdescribed in detail below is a spinal cord stimulation (SCS) system forproviding electrical pulses to the neurons of the spinal cord of apatient. However, many aspects of the invention are not limited tospinal cord stimulation. The electrical stimulation system may providestimulation to other body portions including a muscle or muscle group,nerves, the brain, etc.

FIG. 1 shows a spinal cord stimulation system 100 in use with a patient105. The system 100 includes one or more implanted medical electricalleads 110 connected to an implantable pulse generator (IPG) 115 orexternal pulse generator (EPG) 115A. The leads 110 include an electrodearray 120 at a distal end of the base lead cable. The electrode array120 includes one or more electrical stimulation electrodes (may also bereferred as electrode contacts or simply electrodes) and is placedadjacent to the dura of the spine 125 using an anchor. The spinal columnincludes the C1-C7 (cervical), T1-T12 (thoracic), L1-L5 (lumbar) andS1-S6 (sacral) vertebrae and the electrode array(s) 120 may bepositioned anywhere along the spine 125 to deliver the intendedtherapeutic effects of spinal cord electrical stimulation in a desiredregion of the spine. The electrodes (discussed further in FIGS. 2 and 3)of the electrode arrays 120 promote electrical stimulation to theneurons of the spine based on electrical signals generated by the IPG115. In one construction, the electrical signals are regulated currentpulses that are rectangular in shape. However, the electrical signalscan be other types of signals, including other types of pulses (e.g.,regulated voltage pulses), and other shapes of pulses (e.g.,trapezoidal, sinusoidal). The stimulation is provided from the IPG 115to the electrodes via the base lead, which is connected to the IPG 115with the proximal end of the base lead. The body of the lead cantraverse through the body of the patient via the spinal column and fromthe spinal column through the body of the patient to the implant site ofthe IPG 115.

The IPG 115 generates the electrical signals through a multiplicity ofelectrodes (e.g., four, eight, sixteen, twenty-four electrodes). The IPG115 can control, for example, six aspects of electrical stimulationbased on a program (may also be referred to as a protocol): on/off,amplitude (e.g., current or voltage), frequency, pulse width, pulseshape, and polarity (anodic or cathodic stimulation). The stimulationmost discussed herein is a regulated (or constant) current that providesa square wave, cathodic stimulation with a variable amplitude,frequency, and/or pulse width. Typically, the IPG 115 is implanted in asurgically made pocket (e.g., in the abdomen) of the patient. However,the pulse generator can also be the EPG 115A.

The IPG 115 communicates with any one of a clinician programmer (CP)130, a patient programmer and charger (PPC) 135, and a pocket (or fob)programmer (PP) 140. As discussed in further detail below, the CP 130interacts with the IPG 115 to develop a program for stimulating thepatient. The developing of the program is assisted with the use of apatient-feedback device (PFD) 145. Once a program is developed, theprogram may be stored at the IPG 115. The PPC 135 or the PP 140 canactivate, deactivate, or perform limited changes to the programmingparameters of the program. The PPC 135 is also used for charging the IPG115.

For the construction described herein, the IPG 115 includes arechargeable, multichannel, radio-frequency (RF) programmable pulsegenerator housed in a metallic (e.g., titanium) case or housing. Themetallic case is sometimes referred to as the “can” and may act eitheras a cathode or an anode or floating to the electrical contacts.

Referring now to FIGS. 2 and 3, the figures show two exemplary leads110A and 110B, respectively, that can be used in the SCS system. A firstcommon type of lead 110 is the “in-line” lead shown in FIG. 2. Anin-line lead 110A includes individual electrodes 150A along the lengthof a flexible cable 155A. A second common type of lead 110 is the“paddle” lead shown in FIG. 3. In general, the paddle lead 110B isshaped with a wide platform 160B on which a variety of electrode 150Bconfigurations are situated. For example, the paddle lead 110B shown inFIG. 3 has two columns of four rectangular shaped electrodes 150B. Apaddle lead typically contains contacts on one side only, but is notrestricted to individual electrodes on either side, or electrodesperforating the carrier material.

For both leads shown in FIGS. 2 and 3, a flexible cable 155A or 155B hasrespective small wires for the electrodes 150A or 150B. The wires areembedded within the cable 155A or 155B and carry the electricalstimulation from the IPG 115 to the electrodes 150A or 150B.

It is envisioned that other types of leads 110 and electrode arrays 120can be used with the invention. Also, the number of electrodes 150 andhow the electrodes 150 are arranged in the electrode array 120 can varyfrom the examples discussed herein.

The leads shown in FIGS. 2 and 3 are multiple channel leads. Here, a“channel” is defined as a specified electrode 150, or group ofelectrodes 150, that receives a specified pattern or sequence ofelectrical stimuli. For simplicity, this description will focus on eachelectrode 150 and the IPG's 115 metallic housing providing a respectivechannel. When more than one channel is available, each channel may beprogrammed to provide its own stimulus to its defined electrode.

There are many instances when it is advantageous to have multiplechannels for stimulation. For example, different pain locations (e.g.,upper extremities, lower extremities) of the patient may requiredifferent stimuli. Further, some patients may exhibit conditions bettersuited to “horizontal” stimulation paths, while other patients mayexhibit conditions better suited to “vertical” stimulation paths.Therefore, multiple electrodes positioned to provide multiple channelscan cover more tissue/neuron area, and thereby provide betterstimulation program flexibility to treat the patient.

It is also envisioned that the number of leads 110 can vary. Forexample, one, two, or more leads 110 can be connected to the IPG 115.The electrode arrays 120 of the leads 110, respectively, can be disposedin different vertical locations on the spine 125 with respect to avertical patient 105, can be disposed horizontally (or “side-by-side”)on the spine 125 with respect to a vertical patient 105, or somecombination thereof.

In alternative to the IPG 115, the leads 110 can receive electricalstimuli from the EPG 115A (also referred to a trial stimulator) throughone or more percutaneous lead extensions. The EPG 115A may be usedduring a trial period.

In one specific construction, a single lead 110B having a two-by-fourelectrode paddle (as shown in FIG. 3) is secured to the thoracic portionof the spine 125. An IPG 115 having a metallic housing is disposedwithin the patient 105. The housing acts as another electrode in thiscontemplated SCS system 100. Thus, this arrangement results in nineelectrodes total. Also, the specifically-discussed system includes ninechannels formed by the eight electrodes of the electrode array 120,respectively, and the metallic housing of the IPG 115. However, itcontemplated that a different number of leads, electrodes, and channelsfall within the scope of the invention.

Referring back to FIG. 1, a user provides feedback to the CP 130 with aPFD 145 while the CP 130 develops the program for the IPG 115. In FIG.1, the PFD 145 is an ergonomic handheld device having a sensor (alsoreferred to as input) 165, a controller, and a communications output175. The sensor 165 can take the form of a discrete switch or can takethe form of a continuously variable input, such as through the use of astrain gauge. It is envisioned that the use of a continuously variableinput can provide magnitude information, thereby providing feedbackinformation.

FIG. 4 provides a block diagram of an exemplary handheld PFD 145 used inthe SCS system 100. The PFD 145 includes two inputs 900 and 905 incommunication with the housing of the device 145 and one input 910internal to the housing. One of the external inputs 900 is a binaryON/OFF switch, preferably activated by the patient's thumb, to allow thepatient 105 to immediately deactivate stimulation. The second input 905includes a force or displacement sensor sensing the pressure or forceexerted by the patient's hand. The sensed parameter can be eitherisotonic (constant force, measuring the distance traversed) or isometric(measuring the force, proportional to pressure applied by patient 105).The resulting signal from the sensor 905 is analog and, therefore, thesignal is conditioned, amplified, and passed to a microcontroller via ananalog-to-digital converter.

The internal input 910 for the PFD 145 of FIG. 4 is a motion sensor. Thesensor 910, upon detecting motion, initiates activation of the PFD 145.The device 145 stays active until movement is not detected by the sensor910 for a time period. Alternatively, the PFD can beactivated/deactivate by an on-off button. Power is provided by aninternal battery 920 that can be replaceable and/or rechargeable.

The processing of the inputs from the sensors 900 and 905 take place ina controller, such as a microcontroller 925. The microcontroller 925includes a suitable programmable portion 930 (e.g., a microprocessor ora digital signal processor), a memory 935, and a bus 940 or othercommunication lines. Output data of the microcontroller 925 is sent viaa Bluetooth bi-direction radio communication portion 945 to the CP 130.The Bluetooth portion 945 includes a Bluetooth communication interface,an antenna switch, and a related antenna, all of which allows wirelesscommunication following the Bluetooth Special Interest Group standard.Other outputs may include indicators (such as light-emitting diodes) forcommunicating stimulation activity 950, sensor activation 955, anddevice power 960, and a speaker and related circuitry 965 for audiblefeedback.

As discussed further below, the patient 105 provides feedback to the SCSsystem 100, and specifically the CP 130, while the CP 130 establishesthe program for the IPG 115. The patient 105 can activate the PFD 145when the patient 105 feels various stimuli, such as paresthesia or pain.

Other means can be used for receiving patient feedback. For example, apatient can provide feedback using a mouth-piece that is inserted intothe mouth of the patient, where the mouth-piece enables the user toprovide feedback by biting the mouthpiece. Additionally, a patient canuse an optical sensor (such as a camera and related image processingsoftware) that detects visual cues from a patient, such as blinking ofthe patient's eyes, and/or a foot pedal that receives input by thepatient manipulating a switch with his foot. It is also envisioned thatthe patient may provide feedback directly through the touch screen orhard buttons on the CP 130.

As discussed earlier, it should be understood that aspects of the SCSsystem 100 can be applied to other types of electrical stimulationsystems. That is, other electrical stimulation systems provideelectrical stimuli to other types of target tissues. Similar to the SCSsystem 100, these other electrical stimulation systems include one ormore medical electrical leads having electrodes, a stimulation generatorcoupled to the one or more medical electrical leads, and a clinicianprogrammer for establishing a program with the stimulation generator.

FIG. 5 shows a block diagram of one construction of the IPG 115. The IPG115 includes a printed circuit board (“PCB”) that is populated with aplurality of electrical and electronic components that provide power,operational control, and protection to the IPG 115. With reference toFIG. 5, the IPG 115 includes a communication portion 200 (also referredto as a communication unit) having a transceiver 205, a matching network210, and antenna 212. The communication portion 200 receives power froma power ASIC (discussed below), and communicates information to/from themicrocontroller 215 and a device (e.g., the CP 130) external to the IPG115. For example, the IPG 115 can provide bi-direction radiocommunication capabilities, including Medical Implant CommunicationService (MICS) bi-direction radio communication following the MICSspecification.

The IPG 115, as previously discussed, provides stimuli to electrodes 150of an implanted medical electrical lead 110. As shown in FIG. 5, Nelectrodes are connected to the IPG 115. In addition, the enclosure orhousing 220 of the IPG 115 can act as an electrode. The stimuli areprovided by a stimulation portion 225 in response to commands from themicrocontroller 215. The stimulation portion 225 includes a stimulationapplication specific integrated circuit (ASIC) 230 and circuitryincluding blocking capacitors and an over-voltage protection circuit. Asis well known, an ASIC is an integrated circuit customized for aparticular use, rather than for general purpose use. ASICs often includeprocessors, memory blocks including ROM, RAM, EEPROM, Flash, etc. Thestimulation ASIC 230 can include a processor, memory, and firmware forstoring preset pulses and programs that can be selected via themicrocontroller 215. The providing of the pulses to the electrodes 150is controlled through the use of a waveform generator and amplitudemultiplier of the stimulation ASIC 230, and the blocking capacitors andovervoltage protection circuitry of the stimulation portion 225, as isknown in the art. The stimulation portion 225 of the IPG 115 receivespower from the power ASIC (discussed below). The stimulation ASIC 230also provides signals to the microcontroller 215. More specifically, thestimulation ASIC 230 can provide impedance values for the channelsassociated with the electrodes 150, and also communicate calibrationinformation with the microcontroller 215 during calibration of the IPG115.

The IPG 115 also includes a power supply portion 240. The power supplyportion includes a rechargeable battery 245, fuse 250, power ASIC 255,recharge coil 260, rectifier 263 and data modulation circuit 265. Therechargeable battery 245 provides a power source for the power supplyportion 240. The recharge coil 260 receives a wireless signal from thePPC 135. The wireless signal includes an energy that is converted andconditioned to a power signal by the rectifier 263. The power signal isprovided to the rechargeable battery 245 via the power ASIC 255. Thepower ASIC 255 manages the power for the IPG 115. The power ASIC 255provides one or more voltages to the other electrical and electroniccircuits of the IPG 155. The data modulation circuit 265 controls thecharging process.

The IPG also includes a magnetic sensor 280. The magnetic sensor 280provides a “hard” switch upon sensing a magnet for a defined period. Thesignal from the magnetic sensor 280 can provide an override for the IPG115 if a fault is occurring with the IPG 115 and is not responding toother controllers.

The IPG 115 is shown in FIG. 5 as having a microcontroller 215.Generally speaking, the microcontroller 215 is a controller forcontrolling the IPG 115. The microcontroller 215 includes a suitableprogrammable portion 285 (e.g., a microprocessor or a digital signalprocessor), a memory 290, and a bus or other communication lines. Anexemplary microcontroller capable of being used with the IPG is a modelMSP 430 ultra-low power, mixed signal processor by Texas Instruments.More specifically, the MSP 430 mixed signal processor has internal RAMand flash memories, an internal clock, and peripheral interfacecapabilities. Further information regarding the MSP 430 mixed signalprocessor can be found in, for example, the “MSP 430G2×32, MSP 430G2×02MIXED SIGNAL MICROCONTROLLER” data sheet; dated December 2010, publishedby Texas Instruments at www.ti.com; the content of the data sheet beingincorporated herein by reference.

The IPG 115 includes memory, which can be internal to the control device(such as memory 290), external to the control device (such as serialmemory 295), or a combination of both. Exemplary memory include aread-only memory (“ROM”), a random access memory (“RAM”), anelectrically erasable programmable read-only memory (“EEPROM”), a flashmemory, a hard disk, or another suitable magnetic, optical, physical, orelectronic memory device. The programmable portion 285 executes softwarethat is capable of being stored in the RAM (e.g., during execution), theROM (e.g., on a generally permanent basis), or another non-transitorycomputer readable medium such as another memory or a disc.

Software included in the implementation of the IPG 115 is stored in thememory 290. The software includes, for example, firmware, one or moreapplications, program data, one or more program modules, and otherexecutable instructions. The programmable portion 285 is configured toretrieve from memory and execute, among other things, instructionsrelated to the control processes and methods described below for the IPG115. For example, the programmable portion 285 is configured to executeinstructions retrieved from the memory 290 for sweeping the electrodes150 in response to a signal from the CP 130.

The PCB also includes a plurality of additional passive and activecomponents such as resistors, capacitors, inductors, integratedcircuits, and amplifiers. These components are arranged and connected toprovide a plurality of electrical functions to the PCB including, amongother things, filtering, signal conditioning, or voltage regulation, asis commonly known.

FIG. 6 shows a block diagram of one construction of the CP 130. The CP130 includes a printed circuit board (“PCB”) that is populated with aplurality of electrical and electronic components that provide power,operational control, and protection to the CP 130. With reference toFIG. 6, the CP includes a processor 300. The processor 300 is acontroller for controlling the CP 130 and, indirectly, the IPG 115 asdiscussed further below. In one construction, the processor 300 is anapplications processor model i.MX515 available from FreescaleSemiconductor. More specifically, the i.MX515 applications processor hasinternal instruction and data caches, multimedia capabilities, externalmemory interfacing, and interfacing flexibility. Further informationregarding the i.MX515 applications processor can be found in, forexample, the “IMX51CEC, Rev. 4” data sheet; dated August 2010; publishedby Freescale Semiconductor at www.freescale.com, the content of the datasheet being incorporated herein by reference. Of course, otherprocessing units, such as other microprocessors, microcontrollers,digital signal processors, etc., can be used in place of the processor300.

The CP 130 includes memory, which can be internal to the processor 300(e.g., memory 305), external to the processor 300 (e.g., RAM 310), or acombination of both. Exemplary memory include a read-only memory(“ROM”), a random access memory (“RAM”), an electrically erasableprogrammable read-only memory (“EEPROM”), a flash memory, a hard disk,or another suitable magnetic, optical, physical, or electronic memorydevice. The processor 300 executes software that is capable of beingstored in the RAM (e.g., during execution), the ROM (e.g., on agenerally permanent basis), or another non-transitory computer readablemedium such as another memory or a disc. The CP 130 also includesinput/output (“I/O”) systems that include routines for transferringinformation between components within the processor 300 and othercomponents of the CP 130 or external to the CP 130.

Software included in the implementation of the CP 130 is stored in thememory 305 of the processor 300, RAM 310, ROM 315, or external to the CP130. The software includes, for example, firmware, one or moreapplications, program data, one or more program modules, and otherexecutable instructions. The processor 300 is configured to retrievefrom memory and execute, among other things, instructions related to thecontrol processes and methods described below for the CP 130. Forexample, the processor 300 is configured to execute instructionsretrieved from the memory 305, RAM 310, and/or ROM 315 for establishinga program to control the IPG 115.

One memory shown in FIG. 6 is RAM 310, which can be a double data rate(DDR2) synchronous dynamic random access memory (SDRAM) for storing datarelating to and captured during the operation of the CP 130. Inaddition, a secure digital (SD) or multimedia card (MMC) can be coupledto the CP for transferring data from the CP to the memory card via slot315. Of course, other types of data storage devices can be used in placeof the data storage devices shown in FIG. 6.

The CP 130 includes multiple bi-directional radio communicationcapabilities. Specific wireless portions included with the CP 130 are aMedical Implant Communication Service (MICS) bi-direction radiocommunication portion 320, a WiFi bi-direction radio communicationportion 325, and a Bluetooth bi-direction radio communication portion330. The MICS portion 320 includes a MICS communication interface, anantenna switch, and a related antenna, all of which allows wirelesscommunication using the MICS specification. The WiFi portion 325 andBluetooth portion 330 include a WiFi communication interface, aBluetooth communication interface, an antenna switch, and a relatedantenna all of which allows wireless communication following the WiFiAlliance standard and Bluetooth Special Interest Group standard. Ofcourse, other wired, wireless local area network (WLAN) standards, andwireless personal area networks (WPAN) standards can be used with the CP130.

The CP 130 includes three hard buttons: a “home” button 335 forreturning the CP to a home screen for the device, a “quick off” button340 for quickly deactivating stimulation IPG, and a “reset” button 345for rebooting the CP 130. The CP 130 also includes an “ON/OFF” switch350, which is part of the power generation and management block(discussed below).

The CP 130 includes multiple communication portions for wiredcommunication. Exemplary circuitry and ports for receiving a wiredconnector include a portion and related port for supporting universalserial bus (USB) connectivity 355, including a Type-A port and a Micro-Bport; a portion and related port for supporting Joint Test Action Group(JTAG) connectivity 360, and a portion and related port for supportinguniversal asynchronous receiver/transmitter (UART) connectivity 365. Ofcourse, other wired communication standards and connectivity can be usedwith or in place of the types shown in FIG. 6.

Another device connectable to the CP 130, and therefore supported by theCP 130, is an external display. The connection to the external displaycan be made via a micro High-Definition Multimedia Interface (HDMI) 370,which provides a compact audio/video interface for transmittinguncompressed digital data to the external display. The use of the HDMIconnection 370 allows the CP 130 to transmit video (and audio)communication to an external display. Of course other connectionschemes, such as DVI, can be used with the CP 130.

The CP 130 includes a touch screen I/O device 375 for providing a userinterface with the clinician. The touch screen display 375 can be aliquid crystal display (LCD) having a resistive, capacitive, or similartouch-screen technology. It is envisioned that multitouch capabilitiescan be used with the touch screen display 375 depending on the type oftechnology used.

The CP 130 includes a camera 380 allowing the device to take pictures orvideo. The resulting image files can be used to document a procedure oran aspect of the procedure. For example, the camera 380 can be used totake pictures of barcodes associated with the IPG 115 or the leads 110,or documenting an aspect of the procedure, such as the positioning ofthe leads. Similarly, it is envisioned that the CP 130 can communicatewith a fluoroscope or similar device to provide further documentation ofthe procedure. Other devices can be coupled to the CP 130 to providefurther information, such as scanners or RFID detection. Similarly, theCP 130 includes an audio portion 385 having an audio codec circuit,audio power amplifier, and related speaker for providing audiocommunication to the user, such as the clinician or the surgeon.

The CP 130 further includes a power generation and management block 390.The power block 390 has a power source (e.g., a lithium-ion battery) anda power supply for providing multiple power voltages to the processor,LCD touch screen, and peripherals.

As best shown in FIG. 1, the CP 130 is a handheld computing tablet withtouch screen capabilities. The tablet is a portable personal computerwith a touch screen, which is typically the primary input device.However, an external keyboard or mouse can be attached to the CP 130.The tablet allows for mobile functionality not associated with eventypical laptop personal computers, which can be used in some embodimentsof the invention.

In operation, the IPG 115 (or the EPG 115A) through the use of theimplanted medical electrical leads 110, and specifically the electrodes150, stimulates neurons of the spinal cord 125. The IPG 115 selects anelectrode stimulating configuration, selects a stimulation waveform,regulates the amplitude of the electrical stimulation, controls thewidth and frequency of electrical pulses, and selects cathodic or anodicstimulation. This is accomplished by a healthcare professional (e.g., aclinician), using the CP 130, setting the parameters of the IPG 115. Thesetting of parameters of the IPG results in a “program” for theelectrode stimulation. Programming may result in multiple programs thatthe patient can choose from. Having multiple programs allows, forexample, the patient to find a best setting for paresthesia at aparticular time of treatment.

With reference to FIG. 3, an electrode array 120 includes eightelectrodes 150B. The shown electrode array 120 has two columns and fourrows as viewed along a longitude length of the lead 110. Moregenerically, the lead includes cl columns and r rows, where cl is twoand r is four. When referring to a particular column, the column isreferred to herein as the j-th column, and when referring to aparticular row, the row is referred to as the i-th row.

Before proceeding further, it should be understood that not allelectrode arrays 120 are conveniently shaped as a simple matrix havingdefinite columns and definite rows. More complex configurations arepossible, which are referred to herein as complex electrode arrayconfigurations. The processes discussed herein can account for complexelectrode array configurations. For example, a representative arrayhaving cl columns and r rows for a complex electrode array configurationmay include “dummy” addresses having “null” values in the array. For aspecific example, an electrode contact may span multiple columns. Theresulting array may have a first address i, j representing the multiplecolumn electrode and a second address i, j+1 having a “null” value toaccount for the multiple columns of the multiple column electrode. Thisconcept can be expanded to even more complex arrangements. Accordingly,all electrode arrays 120 can be addressed as a matrix and it will beassumed in the discussion below that the electrode array 120 has beenaddressed as a matrix.

FIG. 7 illustrates a method 500 of providing electrical stimulation to apatient using, for example, the spinal cord stimulation system 100described above. The method 500 begins with identifying a location onthe spinal cord of the patient 105 to receive stimulation (step 505). Instep 510, the location of medical leads 110 implanted in the patient 105is determined and positioned on a patient model displayed on a graphicaluser interface (GUI) (e.g., on display 375 of CP 130). In step 515, auser selects whether to proceed with manual configuration of thestimulation (step 520) or with an automated search for identifypreferred stimulation programming (step 525). After proceeding withsteps 520 and 525, the user may return to step 515.

Before proceeding further, it should be understood that the stepsdiscussed in connection with FIG. 7 above and with FIGS. 8, 11, 15, and17 below will be discussed in a generally iterative manner fordescriptive purposes. However, various steps described herein withrespect to the process of FIGS. 8, 11, 15, and 17 are capable of beingexecuted simultaneously or in an order that differs from the illustratedserial and iterative manner of discussion. It is also envisioned thatnot all steps are required as described below. For instance, each of thesteps of method 500 may be implemented alone, in combination with othersteps, or in a different order than set forth in FIG. 7. As shown inFIG. 7, methods 510, 520, and method 525 may be carried out in series.However, the methods 510, 520, and 525 are shown in FIGS. 11, 15, and17, respectively, to include steps that are nearly duplicative to oneanother. For example, steps 510 a to 510 f are similar to steps 520 a to520 f. Thus, if method 510 as shown in FIG. 11 were executed first, thenmethod 520 as shown in FIG. 15, steps 510 a to 510 f would, in essence,be executed a second time when steps 520 a and 520 f are performed. Themethods are illustrated in this manner to highlight the independence ofmethods 510, 520, and 525. However, when carrying out methods 510, 520,and 525 in series as shown in FIG. 7, at least in some instances, suchrepetitive steps are not re-executed. For example, in executing themethods 510 and 520 in series, as shown in FIG. 7, at least in someinstances, either steps 510 a to 510 f or steps 520 a to 520 f, but notboth, are executed.

FIG. 8 illustrates step 505 (also referred to as method 505) in greaterdetail. In step 505 a, a patient model is displayed on a display device.For instance, an image of a human may be shown on the touch screendisplay 375 of the CP 130. The user (e.g., the patient 105 or another onbehalf of the patient) may request alternate views of the patient model530, such as a front or back view as illustrated in FIGS. 9A and 9B,respectively. Additionally, the patient may magnify various portions ofthe patient model 530 to view the portion in more detail. FIGS. 9A-Cdepict various views of a patient model 530 as displayed on touch screendisplay 375 including a front, back, and magnified view.

In step 505 b, the user selects an area on the patient model 530 thatcorresponds to an area of pain on the patient 105. The user may make theselection via the touch screen capabilities of the touch screen display375, or another user input of the CP 130 (e.g., mouse, keyboard, etc.).The user may more generally select an area on the patient model 530 torequest a magnified view (e.g., FIG. 9C) and, thereafter, indicate thelocation of pain on the patient model 530 more particularly.

Upon receiving the user indication of the area of pain on the patientmodel 530, the CP 130 associates the area of pain with a spinal cordlocation in step 505 c. For instance, the CP 130 accesses a databasethat receives as input a body part location and returns as output anassociated spinal cord location. The database may be stored locally(e.g., in memory 305) or remotely (e.g., accessible via an Internet orlocal network connection). For instance, in FIGS. 9A and 9B, in responseto user input selecting the mid-thigh of the right leg of the patientmodel 530, the CP 130 associates the selection with the L3 vertebrae andthe lumbar plexus. The CP 130 may also indicate the association in step505 c by, e.g., a textual or image output. Additionally, the user mayspecify the type of nerves being listed or highlighted. For instance, inresponse to the user selecting one of a sensory, motor, and rootgraphical buttons 534, the CP 130 lists and/or highlights on the patientmodel 530 the sensory, motor, and root nerves, respectively, associatedwith the area of pain indicated by the user input. In some instances,the CP 130 includes a representation of the spinal column 533 that canbe used to highlight the associated location on the spinal columndetermined in step 505 c.

In step 505 d, the CP 130 determines a suggested stimulation area tostimulate the associated spinal cord location. A database may storesuggested stimulation areas such that the database receives as input aspinal cord location and provides as output the suggested stimulationarea. The database may be the same database referred to with respect tostep 505 c. In some embodiments, steps 505 c and 505 d are combined intoa single step. In other words, an identified pain location is input tothe CP 130 and the CP 130 determines a suggested stimulation areawithout first associating the pain area with a spinal cord location. Thesteps of associating may be performed by an association module (notshown) of the CP 130.

In step 505 e, the determined stimulation area is displayed to the userand/or patient. For instance, FIG. 10 depicts an anatomically correctspinal column 535 representation of the patient and a suggestedstimulation field 540 including a target area 545 near the L3 vertebrae.The term “anatomically correct” means a generally realisticrepresentation of the particular patient's anatomy or an actual image(e.g., x-ray image) of the patient, rather than a generic imageapplicable to patients with significantly different anatomies. Thus, ananatomically correct image is scaled to a patient to accommodatedifferently sized patients or is otherwise customized to a particularpatient or to particular characteristics associated with the patient.

Although method 505 is discussed as being implemented using the CP 130,another computer device, such as a personal computer, laptop, tablet,smart phone, etc., may be used in method 505 either in place of or incombination with the CP 130. For instance, the CP 130 may transmit userinput to another computer device for remote computing or the CP 130 mayaccess information remotely stored on another computer device to executemethod 505.

FIG. 11 illustrates step 510 (also referred to as method 510) formodeling the position of one or more medical leads 110 (e.g., graphicalleads 575 a and 575 b) on a patient model in greater detail. Theposition of one or more medical leads 110 are modeled based on actualmedical leads 110 implanted within the patient 105. Accurately modelingthe actual placement of the medical leads 110 within the patient 105assists a user in stimulation programming. With the input of stimulationparameters, the method 510 also enables modeling of stimulationgenerated by the medical leads 110. This modeling further assists a userin stimulation programming. Additionally, the method 510 allows a userto model medical leads 110 and stimulation before actually implantingthe medical leads 110 within the patient 105. In turn, the method 510assists a clinician in determining where to position leads 110 withinthe patient 105 to obtain desired stimulation. It is also envisionedthat position modeling can be extended to other portions of thestimulation system, such as the IPG 115 for example.

The method 510 begins in step 510 a with displaying an image of a spinalcolumn 560 as shown in FIG. 12A. For instance, the spinal column 560 maybe displayed on the display 375 of the CP 130. The user may specifypatient information, such as height, weight, etc., such that the imageof the spinal column 560 is scaled to be anatomically correct.Alternatively, the image of the spinal column 560 may be an actualfluoroscope or x-ray image received by the CP 130. For instance, theuser may take a picture of an x-ray with the camera 380 of the CP 130,or the CP 130 may communicate with a fluoroscope or similar device toreceive the image of the spinal column 560. The CP 130 may furtherinclude image processing to convert the image into an appropriateformat, to suppress unwanted details, to highlight desired aspects, orotherwise ready the image for display on the CP 130.

In step 510 b, the user inputs lead positioning input. The user firstselects one or more lead types to be positioned on the patient model.The selected leads should generally represent the leads 110 alreadyimplanted in the patient 105 or leads that may potentially be implantedwithin the patient 105. For example, the user may select one or moreleads representing the in-line lead 110A (FIG. 2), the paddle lead 110B(FIG. 3), or another medical lead type.

Once the one or more leads are selected, in step 510 c, they areoverlaid on the image of the spinal column 560, as shown in FIG. 12B. Inthe FIG. 12B example, the user has selected two in-line type leads(representing in-line leads 110A), which are shown as leads 575 a and575 b. In step 510 d, the user indicates whether he or she has completedpositioning the selected medical leads. If not, the method returns tostep 510 b to receive additional user input. In FIGS. 12A-E, the user isable to “move” or “rotate” the leads 575 a and 575 b to position thelead on the spinal column 560. For instance, using the touch screendisplay 375 or other input devices, the user is able to select agraphical lead and to cause its movement or rotation on the display 375.The move button 585 and rotate button 590 alter the positioning actionthat the user may cause with respect to the graphical lead. As shown inFIG. 12B and FIG. 12C, with the move button 585 selected, the user movesthe selected lead 575 b upwards. In FIGS. 12D and 12E, with the rotatebutton 590 selected, the user rotates the selected lead 575 bcounter-clockwise. Additionally, the user may alter the size of theleads 575 a and 575 b by dragging the boundaries of the lead via thetouch screen display 375 or other input device. In some instances, anadditional “resize” graphic button, similar to the move button 585 androtate button 590, is shown on the display 375 such that the user canselectively enable/disable the ability to resize the leads 575 a and 575b. Thus, the user is able to provide the CP 130 with positioning inputto position the leads 575 a and 575 b in the anatomically correctposition (e.g., the lead 575 b is generally in the middle of the spinalcolumn 560 along the L2, L3, and L4 vertebrae), in the anatomicallycorrect orientation (e.g., the lead 575 b is rotated slightlycounterclockwise), and with the anatomically correct size (e.g., thelead 575 a and 575 b are the appropriate scale/size relative to thespinal column 560).

In some instances, when an actual image of the patient, such as an x-rayor fluoroscope image, is received by the CP 130 in step 510 a, the CP130 may use image processing in step 510 b to analyze the received imageto identify the actual lead position, orientation, and size. Thepositioning input of the leads is received from an image processingmodule (not shown) of the CP 130. Thereafter, in step 510 c, the spinalcolumn 560 and leads 575 a and 575 b, as identified, are displayed onthe screen 375. The user may still adjust the position of the leads 575a and 575 b by cycling through steps 510 d, 510 b, and 510 c asnecessary. Additionally, the user may specify to the CP 130 the leadtype(s) in step 510 b, particularly if the CP 130 is not able to deducethe type based on the positioning input.

To indicate that the user has completed positioning the leads 575 a and575 b, the user may select the show button 595. The user may return tofurther modify the lead positions by again de-selecting the show button595. Other user actions may be used to indicate completion of leadpositioning as well. The positions of the leads 575 a and 575 b may betransmitted and stored within the IPG 115 for later retrieval. Thepositions of the leads 575 a and 575 b may be represented usingcoordinates in an x-y coordinate system overlaid on the screen 375. Forinstance, FIG. 12I depicts x-y coordinates and an angle (A_(X), A_(Y),A_(θ)) for lead 575 a and (B_(X), B_(Y), B_(θ)) for lead 575 b, with theorigin (0,0) positioned in the upper left portion of the screen 375. Thex-y-angle coordinates (A_(X), A_(Y), A_(θ)) and (B_(X), B_(Y), B_(θ))indicate, respectively, the location of a reference point on the leads575 a and 575 b, and an angle of an axis of the leads with respect to avertical line (parallel with the y-axis) passing through the x-positionof the reference point. The reference point may be, for instance, anelectrode, a mid-point, an end-point, or another portion of the lead.Additionally, in some instances, multiple coordinates for each lead 575a and 575 b are provided to indicate multiple reference points (e.g.,electrodes) of the leads 575 a and 575 b. The locations of electrodesthat were not specified by the coordinates can be deduced based on theposition data (x-y-angle coordinates) received and based on knowledge ofthe particular lead type. Having the particular electrode locationsallows the CP 130 to be aware of relative positions of the electrodes,which assists in modeling stimulation and determining desiredstimulation parameters. Additional or alternative positioninginformation of the leads 575 a and 575 b may include the size of theleads (length, wide, height), number of electrodes, electrode positionsalong the leads, among other information.

Also transmitted to the IPG 115 can be an identifier for the spinalcolumn representation used in the original positioning process or theimage actually used in the positioning process. For example, theidentifier can identify which representation, image, model, or maporiginally used to generate the position data, thereby allowing betterrendering upon later retrieval. If the patient 105 later returns to aclinician for additional programming, the IPG 115 implanted in thepatient 105 may communicate the position data (including the image oridentifier) to the second (or subsequent) CP 130 of the clinician forrendering. If an identifier is used, the second CP 130 can use theidentifier to select the same image used in the original positioningprocess for the subsequent positioning process. Thus, the communicationof position data can replace step 510 b of method 510 and eliminate theneed to cycle through steps 502 b-520 d, reducing the time needed forprogramming. The position data transferred to the second CP 130 can alsoassist in evaluating or performing a procedure on the patient 105.Moreover, the position data, even if just relational data, can beparticularly useful when multiple leads are connected to the IPG 115.The position data allows for a better representation of the interactingstimulation fields when stimulating the electrodes of each lead.

In some instances, a scaling parameter is sent along with the identifierof the spinal column representation or actual image used in thepositioning process. Scaling an image enables a particular image to beused to represent patients of various sizes. For instance, FIG. 13illustrates an original image 646 at 100% and a scaled image 647 at125%. While the scaled image 647 is larger, a corresponding smaller areaof the image is presented in the display 375 shown in the dashedrectangle) and the leads are not scaled. Alternatively, the scaling maybe applied to the leads 575 a and 575 b instead of or in addition to theimage to ensure proper proportional representation.

FIG. 14 illustrates a first CP 130 a storing lead position data andimage data on the IPG 115, and a second CP 130 b later retrieving thelead data and image data from the IPG 115. As described above, a firstCP 130 a is used for initial programming of the IPG 115. The initialprogramming includes storing lead data and image data on the IPG 115.The lead data includes a lead identifier and position information foreach lead. The image data includes an image identifier and a scalingparameter. Subsequently, a second CP 130 b may receive from the IPG 115the stored lead data and image data. The second CP 130 b may then selectand retrieve a copy of the image from an accessible image database(whether local or remote) using the image identifier. The second CP 130b then scales and displays the image according to the scaling parameter.The second CP 130 b then selects and retrieves graphics of the leadsfrom an accessible lead database (whether local or remote) based on thelead identifiers, and overlays the graphics according to theirrespective lead position data. In some instances, the graphics of theleads may be scaled according to a lead scaling parameter provided inaddition to or in place of the image scaling parameter. Thus, the secondCP 130 b has recreates the image and leads as they were displayed on thefirst CP 130 a. Thereafter, the second CP 130 b can perform additionalprogramming of the leads.

Once the user has completed positioning the leads 575 a and 575 b asdetermined in step 510 d, the user enters stimulation parameters for theleads 575 a and 575 b in step 510 e. In step 510 e, the user indicateswhich electrodes on the medical leads are to be activated and whethereach is an anode or cathode. The user may make these indications via thetouch screen display 375 or other input devices of the CP 130. Forinstance, the user may point to and select one or more electrodes tomark them for activation, and also indicate whether the electrode is ananode or cathode via other buttons of the user interface. Additionally,the user indicates the amplitude and pulse width for the electricaldriving signals sent to the activated electrodes. FIG. 12F depicts anamplitude control 600 and a pulse width control 605, which each have asliding tab 610 for the user to manipulate to indicate the desiredamplitude and pulse width, respectively, for the selected lead. Thecontrol bars also have shutters 615 (left shutter 615 a and rightshutter 615 b) that limit the minimum and maximum selectable amplitudeand pulse width. The shutters 615 may be customized by the user orpreprogrammed for a particular use, medical lead type, etc. In someinstances, the amplitude and pulse width have default settings, such asthe minimum potential amplitude and pulse width. The user may alsoprogram other stimulation parameters of leads 575 a and 575 b, such asfrequency and pulse shape.

After the stimulation parameters are entered, in step 510 f, an expectedstimulation field 625, based on the entered parameters, is determinedand displayed on the display 375. FIG. 12F depicts the expectedstimulation field 625 as described in relation to step 510 f. As theintensity of the expected stimulation field 625 is increased (e.g., theamplitude increased and the “on” duty cycle of the pulse widthincreased), the more opaque the expected stimulation field 625 appears.Other colors or graphic alterations to the expected stimulation field625 may be used in some implementations. Additionally, the user mayfurther adjust the stimulation parameters and view the changes to theexpected stimulation field in real-time. In other words, steps 510 e and510 f may be repeated as desired by the user.

In step 510 g, the user causes generation of a stimulation field via theuser interface of the CP 130. First, the user disables the stimulationlock button 635. Once the stimulation lock button 635 is disabled (seeFIG. 12G), the user may enable the stimulate button 640. When thestimulate button 640 is enabled, a stop button 645 replaces both thestimulation lock button 635 and the stimulate button 640 on the display375, and the expected stimulation field 625 (now representing actualstimulation) changes in appearance (e.g., it becomes more opaque), asshown in FIG. 12H. Additionally, when the stimulate button 640 isenabled, the IPG 115 generates stimulation of the spinal cord accordingto the input stimulation parameters. For instance, the CP 130 transfersthe stimulation parameters and instructions to the IPG 115 via one ofthe various communications interfaces described above. Selecting thestop button 645 on the display 375 ceases the stimulation and re-enablethe stimulation lock button 635 as shown in FIG. 12F.

FIG. 15 depicts a step 520 (also referred to as method 520) forreceiving user input to modify a graphical depiction of a stimulationfield via a graphical user interface to generate and manipulate anactual stimulation field. The method 520 begins with steps 520 a, 520 b,520 c, 520 d, 520 e, and 520 f, which are similar to steps 510 a, 510 b,510 c, 510 d, 510 e, and 510 f of method 510. Although the user inputsstimulation parameters in step 510 e, default parameters may be used inplace of or in combination with user input stimulation parameters instep 520 e. Regardless, in step 520 f, like 510 f, a stimulation field655 with target 660 resulting from the chosen or default stimulationparameters is displayed on the CP 130, along with a spinal column 560,as shown in FIG. 16A.

In step 520 g, the user manipulates the stimulation field 655 and/ortarget 660. The user interface includes a shape button 670 and movebutton 675 to enable the user to specify the type of modification to thestimulation field 655 and/or target 660 that the user is able toperform. When the move button 675 is enabled, the user can move (pan)the entire stimulation field 655 and target 660 up, down, left, orright, either together or independently. For example, the user may dragthe stimulation field 655 or target 660 (e.g., via a mouse or touchscreen display 375 input) to move of the stimulation field 655 or target660. When the shape button 670 is enabled, the user can modify the shapeof the stimulation field 655 and target 660, together or independently.For example, the user may drag the boundaries of the stimulation field655 or target 660 (e.g., via a mouse or touch screen display 375 input)to alter the shape of the stimulation field 655 or target 660. Theseshape and position modifications are graphical manipulations, in thatthey include a user inputting commands into a graphical user interfaceto adjust a graphic depiction of stimulation. The graphicalmanipulations are then translated by the programmer 130 into changes forthe stimulation parameters of the electrode array 120 to generate thestimulation field 655 and target 660 as graphically depicted. Graphicalmanipulations contrast with, for instance, a user manually adjustingstimulation parameters, such as amplitude and pulse width, by enteringor adjusting numeric values (e.g., using the amplitude control 600 orpulse width control 605).

FIGS. 16A and 16B, respectively, show the stimulation field 655 beforeand after the user modified the shape of the stimulation field 655 todecrease in size. FIGS. 16B and 16C, respectively, show the target 660before and after the user modified the shape of the target to increasein size. Additionally, FIGS. 16A and 16B, respectively, show the target660 before and after the user moved the target up and to the right.

In step 520 g, the user is also able to modify the amplitude and pulsewidth of the stimulation field 655 using the amplitude control 600 andpulse width control 605, as described above with respect to method 510.FIG. 16D depicts an increase in amplitude of the stimulation field 655and target 660 relative to FIG. 16C caused by a combination of (1) usermanipulation of the amplitude control 600 and (2) moving the stimulationfield 655 and target 660 downward to an area where the leads 575 a and575 b are closer together. In general, the changes in the intensity ofthe stimulation field 655 and target 660 are illustrated by changing theappearances of each (e.g., by making each more opaque as intensityincreases).

Once the user has completed the initial manipulation of the stimulationfield 655 and target 660, the user causes generation of an actualstimulation field via the user interface of the CP 130 according to thedepicted stimulation field 655 and target 660 as modified by the user instep 520 g. To generate the actual stimulation field, stimulation fieldparameters are determined in step 520 h that, if enacted, will cause thedepicted stimulation field 655 to be generated. For instance, the CP 130includes hardware and/or software to determine which electrodes toenable as cathodes, which electrodes to enable as anodes, and therespective electrical signals (e.g., amplitude, pulse width, pulseshape, pulse frequency, and polarity) to send to each to generate thestimulation field 655 and target 660 as depicted after the user'sgraphical modifications.

In some implementations, the CP 130 assigns a percentage of the totalamplitude to each electrode it determines to enable. For instance, lead575 a may have three cathodes assigned with −10%, −80%, and −10%,respectively, while lead 575 b has four anodes assigned with 10%, 40%,40%, and 10%, respectively. Thus, the percentages of the cathodes add upto −100% and the percentages of the anodes add up to 100%, for anoverall sum of 0%.

Thereafter, in step 520 i, the user causes the IPG 115 to generatestimulation as determined in step 520 h. In step 520 i, the user unlocksthe stimulation lock button 635 and enables the stimulation button 640as described above. When the stimulate button 640 is enabled, a stopbutton 645 replaces both the stimulation lock button 635 the stimulatebutton 640 on the display 375 as shown in FIG. 12H. Additionally, whenthe stimulate button 640 is enabled, the IPG 115 is instructed togenerate stimulation as determined in step 520 h.

The user is further able to graphically manipulate the stimulation field655 and target 660 on-the-fly (i.e., while actual stimulation ison-going). Thus, steps 520 g and 520 h may be repeated while the IPG 115is providing stimulation to the patient. Additionally, in someinstances, the CP 130 causes generation of a stimulation field (step 520i) before steps 520 g and 520 h, such that the graphical manipulationsoccur while the IPG 115 is providing stimulation to the patient.

In some implementations, steps 520 g-520 i are combined with method 510.That is, in place of steps 520 a-520 f, method 510 is first used togenerate a suggested stimulation field 540 and target 545 as shown inFIG. 15. The suggested stimulation field 540 and target 545 are used inplace of the determined and displayed stimulation field 655 and target660 of step 520 f. Thereafter, steps 520 g, 520 h, and 520 i areexecuted. Thus, the user is able to modify the suggested stimulationfield 540 and target 545 in step 520 g; the appropriate stimulationparameters are determined to generate the modified (or unmodified)suggested stimulation field 540 and target 545 in step 520 h; and themodified (or unmodified) suggested stimulation field and target aregenerated via the IPG 115 according to the determined stimulationparameters in step 520 i.

FIG. 17 depicts a step 525 (also referred to as method 525) for anautomated search for an ideal stimulation field based on real-timepatient feedback. In step 525 a, the patient spinal column 560 isdepicted on the display 375 of the CP 130, similar to step 510 a and 520a of methods 510 and 520, respectively. In step 525 b, positions ofmedical leads implanted in the patient are determined. For instance, theuser of the CP 130 may input the location of the medical leads asdescribed above with respect to steps 510 b-510 d, and 520 b-d inmethods 510 and 520, respectively. Additionally, as also describedabove, the IPG 115 may store the positions of the implanted medicalleads. Thus, in step 525 b, the IPG 115 may communicate the positions ofthe implanted medical leads to the CP 130. Images of the leads 575 a and575 b are then overlaid on the spinal column 560 according to themedical lead position data obtained from the user, the IPG 115, oranother source.

In step 525 c, a set of regions 720 is also overlaid on the spinalcolumn 560 on the display 375. FIG. 18A illustrates the display 375 withthe spinal column 560, leads 575 a and 575 b, and set of regions 720.The set of regions 720 may be positioned over an area where thestimulation is generally expected to help alleviate pain. For instance,based on practitioner experience or the method 505, the CP 130determines a general area to receive stimulation. Then, the CP 130overlays the set of regions 720 on the determined general area. The setof regions 720 is depicted in FIG. 18A as a 3×3 grid of squares.However, in some embodiments, the set of regions 720 includes regions ofdifferent sizes, shapes (circles, diamonds, rectangles, hexagons, etc.),and/or combinations thereof.

In step 525 d, the CP 130 causes the IPG 115 to generate stimulation ineach region of the set of regions 720 consecutively. For instance, asshown in FIG. 18A, the CP 130 causes the IPG 115 to generate stimulationin the upper-left region first, and winds down along the path 730stimulating one square at a time until the last square of the set ofregions 720 is stimulated. FIG. 19A illustrates the same path forstimulating each region of the set of regions 720. In FIG. 19A, astimulation field 735 a and target 735 b is generated in the top, middleregion 740 of the set of regions 720.

As each region of the set of regions 720 is stimulated, the CP 130receives real-time patient feedback. For instance, the patient 105indicates via patient feedback device 145 the level of effectiveness ofthe stimulation of each of the nine regions within the set of regions720. The IPG 115 and CP 130 may cooperate such that the stimulationfield 735 a and target 735 b are generated for a first region of the setof regions 720, and they remain until the user provides feedback. Oncethe feedback is received, the CP 130 causes the IPG 115 to generate astimulation field in the second region. This process continues untileach region of the set of regions 720 has been stimulated and each hasbeen associated with user feedback.

In step 525 e, the CP 130 analyzes the patient feedback of step 525 d todetermine a first subset 750 of the set of regions 720. The first subset750 includes those regions whose stimulation was most effective inreducing the patient's pain. In FIGS. 18B and 19B, the first subset 750is highlighted. Determining the first subset 750 may be performed in oneor more ways. For instance, the first subset 750 may include the top Nregions of the set of regions 720, where N is a number greater than zeroand less than the total number of regions within the set of regions 720,or where N is a percentage of the total number of regions within the setof regions 720 (e.g., 25%, which would round to N=2). In some instances,those regions that are below a certain predetermined threshold ofeffectiveness will not qualify for the first subset 750. Alternatively,any region that is above a predetermined threshold of effectiveness mayqualify for the first subset 750.

In step 525 f, a set of subregions 760 are displayed within the firstsubset 750, as illustrated in FIGS. 18C and 19C. FIG. 18D depicts aclose-up view of the subregions 760 of FIG. 18C. The set of subregions760 includes a 2×4 grid of squares that occupy the space of the firstsubset 750. As with the set of regions 720, the set of subregions 760can include subregions of different sizes, shapes, and combinationsthereof.

In step 525 g, the CP 130 causes the IPG 115 to generate stimulation ineach subregion of the set of subregions 760 consecutively. For instance,as shown in FIGS. 18C, 18D, and 19C, the CP 130 causes the IPG 115 togenerate stimulation in the upper-left subregion first, and then tostimulate one square at a time winding down the path 770 until the lastsquare of the set of subregions 760 is stimulated. In FIG. 19C, astimulation field 775 (with field 775 a and target 775 b) is beinggenerated in the top, right subregion 780 of the set of subregions 760.

As each subregion of the set of subregions 760 is stimulated, the CP 130receives real-time patient feedback similar to the stimulation andfeedback described in step 525 d for the set of regions 720. Forinstance, the patient 105 indicates via patient feedback device 145 thelevel of effectiveness of the stimulation of each of the eightsubregions within the set of subregions 760.

In step 525 h, the CP 130 analyzes the patient feedback of step 525 g todetermine a second subset 790 of the set of subregions 760. The secondsubset 790 includes those subregions whose stimulation was mosteffective in reducing the patient's pain, similar to the first subset750. In FIG. 19D, the second subset 790 is highlighted.

In step 525 i, the CP 130 determines a stimulation field 800 a andtarget 800 b that focuses on the second subset 790. Step 525 i issimilar to step 520 g in that a general graphical outline of astimulation field is known, and stimulation parameters to cause actualstimulation according to the outline are determined by the CP 130. TheCP 130 then provides the stimulation parameters to the IPG 115, whichstores them and generates the desired stimulation via the implantedmedical leads 110.

The methods 505, 510, 520, and 525 reduce pain in patients throughcustomized stimulation and reduce the time needed for programming of theIPG 115. Additionally, as particular areas are identified to receivetargeted stimulation, rather than broad stimulation areas, thestimulation is more efficiently implemented. More efficient stimulationreduces power consumption, which increases the life of batteries withinthe IPG 115.

Thus, the invention provides, among other things, useful and systems andmethods for providing electrical stimulation to a neural tissue of apatient. Various features and advantages of the invention are set forthin the following claims.

1. A method of identifying an area for electrical stimulation with astimulation system for treating a patient, the stimulation systemcomprising a programmer configured to communicate with an electricalstimulation generator, the method comprising: displaying a patient modelon a display screen of the programmer; receiving, by the programmer,user input identifying an area of pain on the patient model via aselection of the area of the body part; associating the area of painidentified with a spinal column location; and displaying on the displayscreen a suggested medical lead position on an image of a spinal columnbased on the step of associating.
 2. The method of claim 1, furthercomprising, displaying a suggested stimulation area on the image of thespinal column based on the step of associating.
 3. The method of claim2, wherein displaying the suggested stimulation area further includesdisplaying a target area within the stimulation area.
 4. The method ofclaim 1, further comprising, receiving, by the programmer, positioninginput that indicates a position of a medical lead implanted in thepatient with respect to the spinal column; and displaying arepresentation of the medical lead on the image of the spinal column inan anatomically correct location, in an actual orientation, and with ananatomically correct size, based on the positioning input.
 5. The methodof claim 4, further comprising, determining an expected stimulationfield based on the positioning input and stimulation parameters; anddisplaying the expected stimulation field on the image of the spinalcolumn.
 6. The method of claim 5, further comprising, driving themedical lead with the electrical stimulation generator to generateelectrical stimulation according to the expected stimulation field. 7.The method of claim 5, further comprising, receiving manipulations, viaa graphical user interface, of one of a graphical boundary and graphicalposition of the expected stimulation field; and driving the medical leadwith the electrical stimulation generator to generate electricalstimulation according to the expected stimulation field as manipulated.8. The method of claim 4, further comprising, generating electricalstimulation, with the programmer, the electrical stimulation generator,and the medical lead, at a first series of discrete locations,consecutively, wherein the first series of discrete locations at leastpartially overlaps the suggested stimulation area; and receiving patientfeedback indicating the efficacy of the electrical stimulation for eachlocation of the first series of discrete locations.
 9. The method ofclaim 8, further comprising, generating electrical stimulation, with theprogrammer, the electrical stimulation generator, and the medical lead,at a second series of discrete locations, consecutively, wherein thesecond series of discrete locations is within a subset of the firstseries of discrete locations; receiving additional patient feedbackindicating the efficacy of the electrical stimulation for each locationof the second series of discrete locations; and identifying a subset ofthe second set of discrete locations for targeted electrical stimulationbased on the additional patient feedback.
 10. The method of claim 9,further comprising, generating electrical stimulation, with theprogrammer, the electrical stimulation generator, and the medical lead,at the identified subset of the second set of discrete locations.
 11. Astimulation system for identifying an area for electrical stimulation totreat a patient, the stimulation system comprising: an electricalstimulation generator; a medical lead coupled to the electricalstimulation generator; and a programmer including a communicationinterface that communicates with the electrical stimulation generator togenerate electrical stimulation, a display screen that displays apatient model, and user interface that receives user input identifyingan area of pain on the patient model via a selection of the area of thebody part; wherein the programmer associates the area of pain identifiedwith a spinal column location; and displays a suggested medical leadposition on an image of a spinal column based on the step ofassociating.
 12. The stimulation system of claim 11, wherein theprogrammer displays a suggested stimulation area on the image of thespinal column based on the step of associating.
 13. The stimulationsystem of claim 12, wherein displaying the suggested stimulation areafurther includes displaying a target area within the stimulation area.14. The stimulation system of claim 11, wherein the user interfacereceives positioning input that indicates a position of a medical leadimplanted in the patient with respect to the spinal column; and thedisplay screen displays a representation of the medical lead on theimage of the spinal column in an anatomically correct location, in anactual orientation, and with an anatomically correct size, based on thepositioning input.
 15. The stimulation system of claim 14, wherein theprogrammer determines an expected stimulation field based on thepositioning input and stimulation parameters; and the display screendisplays the expected stimulation field on the image of the spinalcolumn.
 16. The stimulation system of claim 15, wherein the electricalstimulation generator drives the medical lead to generate electricalstimulation according to the expected stimulation field.
 17. Thestimulation system of claim 15, wherein the user interface is agraphical user interface and receives manipulations of one of agraphical boundary and graphical position of the expected stimulationfield; and the electrical stimulation generator drives the medical leadto generate electrical stimulation according to the expected stimulationfield as manipulated.
 18. The stimulation system of claim 14, whereinthe electrical stimulation generator drives the medical lead togenerates electrical stimulation at a first series of discretelocations, consecutively, wherein the first series of discrete locationsat least partially overlaps the suggested stimulation area; and the userinterface receives patient feedback indicating the efficacy of theelectrical stimulation for each location of the first series of discretelocations.
 19. The stimulation system of claim 18, wherein theelectrical stimulation generator drives the medical lead to generateelectrical stimulation at a second series of discrete locations,consecutively, wherein the second series of discrete locations is withina subset of the first series of discrete locations; the user interfacereceives additional patient feedback indicating the efficacy of theelectrical stimulation for each location of the second series ofdiscrete locations; and the programmer identifies a subset of the secondset of discrete locations for targeted electrical stimulation based onthe additional patient feedback.
 20. The stimulation system of claim 19,wherein the electrical stimulation generator drives the medical lead togenerate electrical stimulation at the identified subset of the secondset of discrete locations.
 21. A programmer of a stimulation system usedto identify an area for electrical stimulation to treat a patient, thestimulation system including an electrical stimulation generator and amedical lead coupled to the electrical stimulation generator, theprogrammer comprising: a communication interface that communicates withthe electrical stimulation generator to generate electrical stimulation,a display screen that displays a patient model, and user interface thatreceives user input identifying an area of pain on the patient model viaa selection of the area of the body part; wherein the programmerassociates the area of pain identified with a tissue location; anddisplays a suggested medical lead position on an image of a tissue basedon the step of associating.
 22. The programmer of claim 21, wherein theprogrammer displays a suggested stimulation area on the image of thetissue based on the step of associating.
 23. The programmer of claim 21,wherein the user interface receives positioning input that indicates aposition of a medical lead implanted in the patient with respect to thetissue; and the display screen displays a representation of the medicallead on the image of the tissue in an anatomically correct location, inan actual orientation, and with an anatomically correct size, based onthe positioning input.
 24. The programmer of claim 23, wherein theprogrammer determines an expected stimulation field based on thepositioning input and stimulation parameters; and displays, on thedisplay screen, the expected stimulation field on the image of thetissue.
 25. The programmer of claim 24, wherein the electricalstimulation generator drives the medical lead to generate electricalstimulation according to the expected stimulation field.
 26. Theprogrammer of claim 24, wherein the user interface is a graphical userinterface and receives manipulations of one of a graphical boundary andgraphical position of the expected stimulation field; and the electricalstimulation generator drives the medical lead to generate electricalstimulation according to the expected stimulation field as manipulated.27. The programmer of claim 21 wherein the tissue is a spinal column.